/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package bab;

/**
 * Heuristique qui prend l'objet avec le meilleur ratio poids
 * et qui essaie toujours de la mettre dans le sac
 * @author Florent
 */
public class InBagFirstAndBiggestRatio implements Heuristique {
	private Ub ub;

	@Override
	public void setUb(Ub ub) {
		this.ub = ub;
	}

	@Override
	public int nextObj() {
		UbInfo[] vobj = ub.getVobj();
		int rcap = ub.getRcap();

		for(UbInfo ui : vobj) {
			if( ui.getEtat() == EtatObject.FREE && (ui.getWeight() <= rcap) ) {
				return ui.getIdo();
			}
		}

		return -1;
	}

	@Override
	public boolean brancherDabordSurVrai() {
		return true;
	}
	
}
